package com.example.understand_compose1.testcase_activity

import android.content.Intent
import android.os.Bundle
import android.view.View
import androidx.fragment.app.FragmentActivity
import com.bumptech.glide.Glide
import com.bumptech.glide.load.resource.bitmap.CircleCrop
import com.bumptech.glide.load.resource.bitmap.RoundedCorners
import com.bumptech.glide.request.RequestOptions
import com.example.understand_compose1.R
import com.example.understand_compose1.databinding.FetActivity2Binding
import com.example.understand_compose1.testcase_data.const_net_resource.caseImg
import jp.wasabeef.glide.transformations.BlurTransformation

// ERROR:如果是AppCompatActivity，一旦使用Glide就会闪退，为什么
class FetGlideLoadImgActivity : FragmentActivity() {

    lateinit var binding: FetActivity2Binding

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        binding = FetActivity2Binding.inflate(layoutInflater)
        setContentView(binding.root)
        // Glide加载图片实例1
        Glide.with(this)
            .load(caseImg)// 移动常量值到object class
            .error(R.mipmap.qq_icon)
            .placeholder(R.mipmap.ic_launcher)
            .into(binding.iv2)

        // Glide加载图片实例2
        Glide.with(this)
            .load(caseImg)// 移动常量值到object class
//            圆角图片
            .apply(RequestOptions.bitmapTransform(RoundedCorners(16)))
            .error(R.mipmap.qq_icon)
            .placeholder(R.mipmap.ic_launcher)
            .into(binding.iv3)

        Glide.with(this)
            .load(caseImg)// 移动常量值到object class
//            圆形裁剪
            .apply(RequestOptions.bitmapTransform(CircleCrop()))
            .error(R.mipmap.qq_icon)
            .placeholder(R.mipmap.ic_launcher)
            .into(binding.iv4)

        Glide.with(this)
            .load(caseImg)// 移动常量值到object class
//            实现高斯模糊效果，第一个参数1-25
            .apply(RequestOptions.bitmapTransform(BlurTransformation(25,3)))
            .error(R.mipmap.qq_icon)
            .placeholder(R.mipmap.ic_launcher)
            .into(binding.iv5)



    }

    // 实现点击跳转intent,需要先在Manifest.xml文件注册QQLoginActivity
    fun clicktomain(view: View) {
        // 这种是显式的意图
        val toQQIntent = Intent(this, FetQQLoginActivity::class.java)
        startActivity(toQQIntent)
    }
}